using System.Collections.Generic;
using Lync.Widget.Library.Configuration;
using Lync.Widget.Library.UserService;

namespace Lync.Widget.Library.Repositories
{
    public interface IActiveDirectoryRepository
    {
        IList<User> GetUsers(User user, char separator = '+');
        IList<User> GetUsers(string query, char separator = '+');        
        IList<User> GetUsers(List<string> sipUri, char separator = '+');
        User GetUser(string sipUri, char separator = '+');
        IList<IActiveDirectoryGroup> GetGroupsFromConfiguration();
        IActiveDirectoryGroup GetGroupFromConfiguration(string groupId);
        IList<Group> GetGroups();
        IList<Group> GetGroups(string organisationUnit);
        IList<User> GetUsersFromGroup(Group group);
    }
}